package com.example.hosptial.repository;

import com.example.hosptial.model.view.WardBedPatientView;
import com.example.hosptial.model.view.WardStatusView;
import org.springframework.data.jpa.repository.JpaRepository;
import org.springframework.data.jpa.repository.Query;
import org.springframework.stereotype.Repository;

import java.util.List;

@Repository
public interface WardBedPatientViewRepository extends JpaRepository<WardBedPatientView, Integer> {

    // 根据病房ID查询所有床位信息
    List<WardBedPatientView> findByWardIdOrderByBedNum(Integer wardId);

    // 根据床位状态查询
    List<WardBedPatientView> findByBedStatus(Integer bedStatus);

    // 根据患者ID查询
    WardBedPatientView findByPatientId(Integer patientId);

    // 根据楼层号查询
    List<WardBedPatientView> findByFloorNum(Integer floorNum);

    // 根据病房ID和床位号查询
    WardBedPatientView findByWardIdAndBedNum(Integer wardId, Integer bedNum);

    // 查询空床位
    List<WardBedPatientView> findByPatientIdIsNull();

    List<WardBedPatientView> findByWardIdAndBedStatus(Integer wardId, Integer bedStatus);

    // 根据病房ID查询所有床位信息（包括病人信息）
    List<WardBedPatientView> findByWardId(Integer wardId);
}